/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.gerenciadoc.mb;

import br.com.gerenciadoc.bo.GerenciaDocumento;
import br.com.gerenciadoc.bo.GerenciaUsuario;
import br.com.gerenciadoc.modelo.Documento;
import br.com.gerenciadoc.modelo.Usuario;
import java.io.File;
import java.sql.Date;
import java.util.StringTokenizer;
import javax.faces.context.FacesContext;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpSession;
import org.richfaces.event.UploadEvent;
import org.richfaces.model.UploadItem;

/**
 *
 * @author pedrogazzola
 */
public class MBtransferenciaArquivo {
    
    public void uploadArquivo(UploadEvent evento) {
        FacesContext fc = FacesContext.getCurrentInstance();
        ServletContext sc = (ServletContext) fc.getExternalContext().getContext();
        String caminhoReal = sc.getRealPath("/");
        UploadItem item = evento.getUploadItem();
        File arquivo = item.getFile();
        String nomeCaminhoArquivo = item.getFileName();
        String nomeArquivo = "";
        StringTokenizer st = new StringTokenizer(nomeCaminhoArquivo, "\\");

        while (st.hasMoreElements()) {
            nomeArquivo = st.nextToken();
        }

        caminhoReal = caminhoReal + "uploads/" + nomeArquivo;
        arquivo.renameTo(new File(caminhoReal));

        GerenciaDocumento gerenciaDoc = new GerenciaDocumento();
        Date data = new Date(System.currentTimeMillis());

        Usuario ativo = (Usuario) Utilitario.getHttpSessionObject("usuario");

        if (ativo != null) {
            Documento doc = new Documento(ativo, nomeArquivo, data);
            gerenciaDoc.adicionaDocumento(doc);
            //Utilitario.genericShowMessage("Arquivo enviado com sucesso.");
        } else {
            //Utilitario.genericShowMessage("Nao foi possivel enviar o arquivo");
        }
        
    }
}
